package com.robert.data_generator.aop;

import com.robert.data_generator.enums.DataTypeEnum;

import java.lang.annotation.ElementType;
import java.lang.annotation.Inherited;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * DataProperty: 标记类中的属性
 *
 * @author zhaoshengtao
 * @date 2024/05/23
 */
@Target({ElementType.FIELD})
@Retention(RetentionPolicy.RUNTIME)
@Inherited
public @interface DataProperty {

    Class<?> clazz();

    String value();

    DataTypeEnum type();

    int fixedLength();

    int length();

    int max();

    int min();

}
